xen.git
19 years agoFix next_timer_interrupt() in patch and update caller
ack@localhost.localdomain [Wed, 28 Jun 2006 20:51:01 +0000 (21:51 +0100)]
Fix next_timer_interrupt() in patch and update caller
to deal with the case of existing pending timers.
Fixes a dom0 hang at boot time on some HPs where some
dubious USB code is invoked from pci_init() that
potentially calls msleep(10) a few times.
Signed-off-by: Emmanuel Ackaouy <ack@xensource.com>
19 years agoNew /sys/hypervisor/uuid, containing this domain's UUID.
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 20:03:25 +0000 (21:03 +0100)]
New /sys/hypervisor/uuid, containing this domain's UUID.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
19 years agoUse address types in elf parser that match elf headers.
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 19:46:01 +0000 (20:46 +0100)]
Use address types in elf parser that match elf headers.
Necessary if a long is a different size to addresses in elf
file being parsed.
From: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agokunmap_atomic() must zap the PTE to avoid dangling references
kfraser@dhcp93.uk.xensource.com [Wed, 28 Jun 2006 17:17:41 +0000 (18:17 +0100)]
kunmap_atomic() must zap the PTE to avoid dangling references
when attempting to free memory back to Xen. We can implement
something more efficient in future.

Also add debug print message if guest tries to free 'in use'
memory. We'll make it a real guest-visible error in future.

Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[LINUX] Export flush_tlb_page() to modules in i386-smp builds.
kfraser@dhcp93.uk.xensource.com [Wed, 28 Jun 2006 16:56:34 +0000 (17:56 +0100)]
[LINUX] Export flush_tlb_page() to modules in i386-smp builds.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoMore commented-out code, pending a solution to the xml.marshall.generic
emellor@leeni.uk.xensource.com [Wed, 28 Jun 2006 16:42:05 +0000 (17:42 +0100)]
More commented-out code, pending a solution to the xml.marshall.generic
problem.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years agoComment out the load of the resource label file, pending a solution to the
emellor@leeni.uk.xensource.com [Wed, 28 Jun 2006 16:36:38 +0000 (17:36 +0100)]
Comment out the load of the resource label file, pending a solution to the
problem that we now require xml.marshal.generic.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years ago[TPM] Add 3 more test cases to the xm testsuite that extend the
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 15:22:38 +0000 (16:22 +0100)]
[TPM] Add 3 more test cases to the xm testsuite that extend the
state of a PCR register and test that the value remains the same during
a suspend/resume cycle and during live and non-live local migration.
The patch adapts existing tests to the changes in the driver (moving of
the sysfs entry). Some problems with existing tests are fixed.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
19 years ago[TPM] Add an upgrade patch to bring TPM subsystem to 2.6.17-rc4.
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 15:21:30 +0000 (16:21 +0100)]
[TPM] Add an upgrade patch to bring TPM subsystem to 2.6.17-rc4.

This patch adds the updated and newer driver plugins appearing in
2.6.17-rc4 to the 2.6.16.13 kernel. The patch needs to be placed into
the patches/linux-2.6.16.13 directory and should be removed once an
upgrade is done to 2.6.17-rc4 or later version.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
19 years ago[TPM] Update the TPM drivers in the repository to a newer version
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 15:20:29 +0000 (16:20 +0100)]
[TPM] Update the TPM drivers in the repository to a newer version
and also fixes the following:

- a problem introduced by a recent change to the xenbus_driver structure
requires driver-specific data to be stored in another data structures
- removes the #define'd MIN by min/min_t
- moves the sysfs entry to /sys/devices/xen/<vtpm-%d>
- fixes a bug occurring during cancellation of requests
- updates the default configuration to also compile the TPM V1.2 driver
submitted in part 2 of this patch
- all changes made to the generic TPM driver are surrounded by #ifdef
CONFIG_XEN's.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
19 years ago[XEN] BUG() places console in sync mode.
kfraser@dhcp93.uk.xensource.com [Wed, 28 Jun 2006 15:15:36 +0000 (16:15 +0100)]
[XEN] BUG() places console in sync mode.
Also move the BUG code out of line.
Original patch from Jimi Xenidis.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoThis patch adds new xm subcommands to support working with resource
emellor@leeni.uk.xensource.com [Wed, 28 Jun 2006 15:05:27 +0000 (16:05 +0100)]
This patch adds new xm subcommands to support working with resource
labels.  The new subcommands are 'xm resources', 'xm rmlabel', 'xm
getlabel' and 'xm dry-run'.  In addition, the 'xm addlabel' subcommand
now uses an updated syntax to support labeling both domains and
resources.  See the xm man page for details on each subcommand.

Beyond the new subcommands, this patch allows users to immediately see
when security checks will fail by pushing some basic security checking
into the beginning of 'xm create' and 'xm block-attach'.  ACM security
attributes for block devices are added to XenStore in order to support
the final security enforcement, which will be performed in the kernel
and included in a separate patch.

Signed-off-by: Bryan D. Payne <bdpayne@us.ibm.com>
Signed-off-by: Reiner Sailer <sailer@us.ibm.com>
19 years ago[HVM][Firmware] Make the creation of MP tables more dynamic
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 12:59:29 +0000 (13:59 +0100)]
[HVM][Firmware] Make the creation of MP tables more dynamic

Currently the ROMBIOS includes static MP tables for only four
configurations: 1-way, 2-way, 4-way, and 8-way.

This patch makes the creation of MP tables more dynamic by creating them
from within HVMLOADER based upon the VCPU number provided by the HVM
information table.

Note: Some of the information included used to create the MP tables is
still hard coded and based upon values used in the original ROMBIOS MP
tables.  Data such as the CPU family/model/stepping information should
probably be made to match the information provided to the guest when
executing a CPUID.

Signed-off-by: Travis Betak <travis.betak@amd.com>
19 years ago[XEND] Have the parent id logged in the log file, this is very useful when
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 12:35:22 +0000 (13:35 +0100)]
[XEND] Have the parent id logged in the log file, this is very useful when
debugging xend as it has multiple processes, and it can be hard to
work out which one is doing what without this information.

Signed-Off-By: Horms <horms@verge.net.au>
19 years ago[NET] back: Add TSO support
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 11:04:32 +0000 (12:04 +0100)]
[NET] back: Add TSO support

This patch adds TCP Segmentation Offload (TSO) support to the backend.
It also advertises this fact through xenbus so that the frontend can
detect this and send through TSO requests only if it is supported.

This is done using an extra request slot which is indicated by a flag
in the first slot.  In future checksum offload can be done in the same
way.

The extra request slot must not be generated if the backend does not
support the appropriate feature bits.  For now this is simply feature-tso.

If the frontend detects the presence of the appropriate feature bits,
it may generate TX requests which have the appropriate request flags
set that indicates the presence of an extra request slot with the extra
information.

On the backend the extra request slot is read if and only if the request
flags are set in the TX request.

This protocol allows more feature bits to be added in future without
breaking compatibility.  At least the hardware checksum bit is planned.

Even though only TSO is supported for now the code actually supports
GSO so it can be applied to any other protocol.  The only missing bit
is the detection of host support for a specific GSO protocol.  Once that
is added we can advertise all supported protocols to the guest.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[NET] loopback: Added support for TSO
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 11:03:57 +0000 (12:03 +0100)]
[NET] loopback: Added support for TSO

Just like SG, TSO support here is innate.  So all we need to do is mark it
as such.  This patch also adds the ethtool control functions for SG.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
19 years ago[NET]: Give make_tx_response the req pointer instead of id
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 11:03:19 +0000 (12:03 +0100)]
[NET]: Give make_tx_response the req pointer instead of id

This patch changes the make_tx_response id argument to a request pointer
instead.  This allows us to test the request flag in future for TSO.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
19 years ago[NET]: Added GSO support
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 11:03:01 +0000 (12:03 +0100)]
[NET]: Added GSO support

Imported GSO patch.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
19 years ago[BLKBACK] Output statistics to sysfs.
kfraser@dhcp93.uk.xensource.com [Wed, 28 Jun 2006 09:32:43 +0000 (10:32 +0100)]
[BLKBACK] Output statistics to sysfs.

The location is 'statistics' directory under each VBD directory, for
example, /sys/devices/xen-backend/vbd-x-xxxx/statistics.

The 'statistics' directory includes the following three statistical
information:
  oo_req
       is the number of requests held up due to full pipeline.
  rd_req
       is the number of processed READ requests.
  wr_req
       is the number of processed WRITE requests.

Signed-off-by: Satoshi UCHIDA <s-uchida@ap.jp.nec.com>
19 years ago[XENTOP] Fix CPU percentage display in batch mode.
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 09:24:05 +0000 (10:24 +0100)]
[XENTOP] Fix CPU percentage display in batch mode.
From: shaocyou <shaocyou@jp.fujitsu.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XENTOP] Adds batch mode processing option (output to stdout)
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 09:22:13 +0000 (10:22 +0100)]
[XENTOP] Adds batch mode processing option (output to stdout)
to the xentop utility. It also adds the ability to specify the
number of iterations xentop should produce before exiting.

a) xentop -b

will output to stdout.

b) xentop -i <number>

will iterate <number> times and exit (option "n" is already used by
xentop. Hence the choice of "i"). This option can be used for both the
curses and batch modes.

From: Hariprasad Nellitheertha <mlisthari@gmail.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[HVM][SVM] Clean up double-fault handling.
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 09:03:24 +0000 (10:03 +0100)]
[HVM][SVM] Clean up double-fault handling.

Signed-off-by: Tom Woller <thomas.woller@amd.com>
19 years ago[HVM][SVM] Disable machine check bits in CPUID_1.
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 09:02:27 +0000 (10:02 +0100)]
[HVM][SVM] Disable machine check bits in CPUID_1.

Signed-off-by: Tom Woller <thomas.woller@amd.com>
19 years ago[HVM][SVM] Clean up 32bit/64bit guest register code differences.
kaf24@firebug.cl.cam.ac.uk [Wed, 28 Jun 2006 09:01:18 +0000 (10:01 +0100)]
[HVM][SVM] Clean up 32bit/64bit guest register code differences.

Signed-off-by: Tom Woller <thomas.woller@amd.com>
19 years ago[LINUX] Fix a few compile warnings and memory leaks in the sysfs driver.
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 17:24:08 +0000 (18:24 +0100)]
[LINUX] Fix a few compile warnings and memory leaks in the sysfs driver.
Also clean up the general allocate-call-free idiom that is used
throughout the file.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[LINUX][BLKBACK] Support temporary disconnection from frontend.
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 17:08:46 +0000 (18:08 +0100)]
[LINUX][BLKBACK] Support temporary disconnection from frontend.
Signed-off-by: Steven Smith <sos22@cam.ac.uk>
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[HVM] Fix virtual apic irq distribution.
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 14:38:32 +0000 (15:38 +0100)]
[HVM] Fix virtual apic irq distribution.
But currently we inject PIT irqs to cpu0 only. Also mute some warning
messages.

Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
Signed-off-by: Xin Li <xin.b.li@intel.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Upgrade microcode driver to 1.14a.
kfraser@dhcp93.uk.xensource.com [Tue, 27 Jun 2006 14:22:55 +0000 (15:22 +0100)]
[XEN] Upgrade microcode driver to 1.14a.
Based on a patch from Jan Beulich.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[TOOLS] Remove plan9 loader code. Latest plan9 port uses linux builder.
kfraser@dhcp93.uk.xensource.com [Tue, 27 Jun 2006 13:38:58 +0000 (14:38 +0100)]
[TOOLS] Remove plan9 loader code. Latest plan9 port uses linux builder.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Various cleanups to bitops usage.
kfraser@dhcp93.uk.xensource.com [Tue, 27 Jun 2006 13:34:52 +0000 (14:34 +0100)]
[XEN] Various cleanups to bitops usage.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[LINUX] Allow dma_alloc_coherent() to work for regions up to 2MB.
kfraser@dhcp93.uk.xensource.com [Tue, 27 Jun 2006 11:17:45 +0000 (12:17 +0100)]
[LINUX] Allow dma_alloc_coherent() to work for regions up to 2MB.
The previous limit of 0.5MB was insufficient for some drivers
(e.g., when loading firmware).
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[BALLOON] Make the domain0 ballooning logic in xend aware of pages that are on the...
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 11:03:46 +0000 (12:03 +0100)]
[BALLOON] Make the domain0 ballooning logic in xend aware of pages that are on the page scrub list.
This fixes the case where crashing/restarting a domain can cause dom0 to balloon more than
necessary.

I changed the physinfo dictionary in Python to be in KiB, rather than
MiB, to avoid accumulating ugly rounding errors.  I tried to avoid
changing units anywhere else.

Signed-off-by: Charles Coffing <ccoffing@novell.com>
19 years ago[BUILD] Add distclean build target to xen directory: cleans out tags.
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 10:50:57 +0000 (11:50 +0100)]
[BUILD] Add distclean build target to xen directory: cleans out tags.
Signed-off-by: Horms <horms@verge.net.au>
19 years ago[BALLOON] Add fallback code so that e.g. a domain ballooned too far down can still
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 10:43:04 +0000 (11:43 +0100)]
[BALLOON] Add fallback code so that e.g. a domain ballooned too far down can still
(slowly) recover.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
19 years ago[XEN] Fix my change to XENVER_pagesize hypercall --
kfraser@dhcp93.uk.xensource.com [Tue, 27 Jun 2006 10:35:29 +0000 (11:35 +0100)]
[XEN] Fix my change to XENVER_pagesize hypercall --
arg check wrong way round.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[TPM] Fix an occasional problem when doing local migration due to the xenstore's
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 10:29:29 +0000 (11:29 +0100)]
[TPM] Fix an occasional problem when doing local migration due to the xenstore's
'instance' variable not being initialized at the time when it's driver
counterpart is accessed. That variable's content was used to initialize the
tpmif structure. Instead, now a pointer to the structure is passed whose
'instance' variable will be initialized before the domain is resumed.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
19 years ago[XEN][BUILD] Both ctags and etags support the -a (append) option, and
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 10:27:25 +0000 (11:27 +0100)]
[XEN][BUILD] Both ctags and etags support the -a (append) option, and
by removing the tags or TAGS file, and then running using the
-a option in conjunction with xargs a full list of tags will
be obtained, regardless of how many files there are.

I believe that the existing invocations of both etags and ctags are wrong:

* I don't think - is a vailid argument to etags

* xargs ctags does not handle the case where ctags is invoked
  multiple times by xargs when there are too many files
  to fit on one command line.

Signed-off-by: Horms <horms@verge.net.au>
19 years agoAdd Xenoprof passive domain support
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 10:23:06 +0000 (11:23 +0100)]
Add Xenoprof passive domain support
Signed-off-by: Yang Xiaowei <xiaowei.yang@intel.com>
Signed-off-by: Jose Renato Santos <jsantos@hpl.hp.com>
19 years ago[HVM][SVM] move printk pin msg under an "if svm_dbg_on" conditional to
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 10:17:14 +0000 (11:17 +0100)]
[HVM][SVM] move printk pin msg under an "if svm_dbg_on" conditional to
alleviate excessive printing of messages when vcpu pinned to new core.

Signed-off-by: Tom Woller <thomas.woller@amd.com>
19 years ago[VTPM_TOOLS] Hotplug script enabled the vtpm manager and removed the
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 10:15:48 +0000 (11:15 +0100)]
[VTPM_TOOLS] Hotplug script enabled the vtpm manager and removed the
control messages from the BE.

Signed-off-by: Vincent Scarlata <vincent.r.scarlata@intel.com>
19 years ago[VTPM_TOOLS] Updated vtpmd to save complete state in preperateion to
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 10:14:19 +0000 (11:14 +0100)]
[VTPM_TOOLS] Updated vtpmd to save complete state in preperateion to
support suspend/resume and migration. Fixed startup bug.

Signed-off-by: Vincent Scarlata <vincent.r.scarlata@intel.com>
19 years ago[VTPM_TOOLS] Moved the developement tpm_emulator down to ring 3, which
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 10:13:24 +0000 (11:13 +0100)]
[VTPM_TOOLS] Moved the developement tpm_emulator down to ring 3, which
should make debugging easier as well as fix the emulator for x86_64

Signed-off-by: Vincent Scarlata <vincent.r.scarlata@intel.com>
19 years ago[TOOLS] Fix cm argument processing some more:
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 10:05:39 +0000 (11:05 +0100)]
[TOOLS] Fix cm argument processing some more:
  1. Remove has_long_option() and add arg_check_for_resource_list()
     instead.
  2. 'args' tells 'options' from 'params' by using gnu_getopt().
  3. 'options' checks whether -l/--long option is specified.
  4. If 'params' not given, print out 'No domain parameter given'
     and usage.
  5. If 'params' given multiple domains, print out
     'No multiple domain parameters allowed' and usage.
  6. Then it displays the resources as usual.

Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
19 years agoAdd XENVER_pagesize hypercall.
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 09:44:33 +0000 (10:44 +0100)]
Add XENVER_pagesize hypercall.
Make xen pagesize available through xm info and sysfs.
Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
19 years ago[XEN][EMUL] x86 emulator should support 32-bit offsets in real mode.
kfraser@dhcp93.uk.xensource.com [Tue, 27 Jun 2006 09:36:51 +0000 (10:36 +0100)]
[XEN][EMUL] x86 emulator should support 32-bit offsets in real mode.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[HVM][VMX] On a VMEXIT, 'dirty' the DR. Restore DR from vcpu struct,
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 08:54:05 +0000 (09:54 +0100)]
[HVM][VMX] On a VMEXIT, 'dirty' the DR.  Restore DR from vcpu struct,
disable DR exiting (i.e., enable guest DR access), set VCPUF_dr_dirtied.

Remove "emulated" DR access, which only read and wrote to the debug register
values of the context, but not to the actual hardware values themselves.

Signed-off-by: George Dunlap <dunlapg@umich.edu>
19 years ago[HVM][VMX] Added flag_dr_dirty to hvm vcpu struct. If this flag is set,
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 08:51:18 +0000 (09:51 +0100)]
[HVM][VMX] Added flag_dr_dirty to hvm vcpu struct.  If this flag is set,
save the debug registers, clear the flag, and remove guest access to
debug registers.
Signed-off-by: George Dunlap <dunlapg@umich.edu>
Signed-off-by: Nitin Kamble <nitin.a.kamble@intel.com>
19 years ago[HVM][VMX] Added dr restore if breakpoints are enabled in guest dr7.
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 08:48:23 +0000 (09:48 +0100)]
[HVM][VMX] Added dr restore if breakpoints are enabled in guest dr7.
Signed-off-by: George Dunlap <dunlapg@umich.edu>
Signed-off-by: Nitin Kamble <nitin.a.kamble@intel.com>
19 years ago[HVM][VMX] Safer treatment of VM_EXEC_CONTROL when dealing w/ PENDING_INTERRUPT vmexit.
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 08:41:09 +0000 (09:41 +0100)]
[HVM][VMX] Safer treatment of VM_EXEC_CONTROL when dealing w/ PENDING_INTERRUPT vmexit.
Signed-off-by: George Dunlap <dunlapg@umich.edu>
19 years ago[HVM][VMX] Propagate debug exception to guest if no external debugger is enabled.
kaf24@firebug.cl.cam.ac.uk [Tue, 27 Jun 2006 08:33:35 +0000 (09:33 +0100)]
[HVM][VMX] Propagate debug exception to guest if no external debugger is enabled.
Signed-off-by: George Dunlap <dunlapg@umich.edu>
19 years agoSome fine-tuning in the virtual TPM scripts for hotpluging. The changes
emellor@leeni.uk.xensource.com [Sat, 24 Jun 2006 22:44:18 +0000 (23:44 +0100)]
Some fine-tuning in the virtual TPM scripts for hotpluging. The changes
enable a virtual TPM to save its state between reboots of the virtual
TPM implementation.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
Signed-off-by: Vincent Scarlata <vincent.r.scarlata@intel.com>
19 years agoIncreases the retry limit to allow xend more time before issuing a balloon
emellor@leeni.uk.xensource.com [Sat, 24 Jun 2006 22:39:05 +0000 (23:39 +0100)]
Increases the retry limit to allow xend more time before issuing a balloon
error. This fixes bug #683.

Signed-off-by: Susan Krysan <krysans@unisys.com>
19 years ago[TOOLS] Fix set_bit/clear bit for x86/64 in xc_linux_save
kaf24@firebug.cl.cam.ac.uk [Thu, 22 Jun 2006 20:37:33 +0000 (21:37 +0100)]
[TOOLS] Fix set_bit/clear bit for x86/64 in xc_linux_save
From: John Byrne <john.l.byrne@hp.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XM-TEST] Remove second console attach in 03_memset_random_pos
kaf24@firebug.cl.cam.ac.uk [Thu, 22 Jun 2006 20:30:51 +0000 (21:30 +0100)]
[XM-TEST] Remove second console attach in 03_memset_random_pos
Signed-off-by: Jim Dykman <dykman@us.ibm.com>
19 years ago[VMX] Fix use of VMCLEAR a little: no need if not active on any CPU.
kaf24@firebug.cl.cam.ac.uk [Thu, 22 Jun 2006 14:25:18 +0000 (15:25 +0100)]
[VMX] Fix use of VMCLEAR a little: no need if not active on any CPU.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[TOOLS] Make sure to explicitly close the connection if we're using HTTP/1.0. This
kaf24@firebug.cl.cam.ac.uk [Thu, 22 Jun 2006 14:10:48 +0000 (15:10 +0100)]
[TOOLS] Make sure to explicitly close the connection if we're using HTTP/1.0.  This
shouldn't be needed but it appears to be necessary as the Python client
just does a wfile.read() instead of only reading the reported Content-Length.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
19 years ago[TOOLS] Treat '--' command-line split option correctly.
kaf24@firebug.cl.cam.ac.uk [Thu, 22 Jun 2006 14:09:48 +0000 (15:09 +0100)]
[TOOLS] Treat '--' command-line split option correctly.
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
19 years ago[TOOLS] Fix pagetable-pinning loop in xc_linux_restore.
kaf24@firebug.cl.cam.ac.uk [Thu, 22 Jun 2006 13:12:01 +0000 (14:12 +0100)]
[TOOLS] Fix pagetable-pinning loop in xc_linux_restore.
Previously it would not pin last PFN in physmap even if it was
a pagetable page.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] localtime support for paravirtualized guests
kaf24@firebug.cl.cam.ac.uk [Wed, 21 Jun 2006 16:09:14 +0000 (17:09 +0100)]
[XEN] localtime support for paravirtualized guests

It is quite minimal
in its approach, satisfying the purposes of the paravirtualized
NetWare operating system as well as any others that expect the time
base to be provided in localtime.

Signed-off-by: Bruce Rogers <brogers@novell.com>
19 years ago[LINUX][TPM] Use min_t/min instead of the #define'd MIN.
kaf24@firebug.cl.cam.ac.uk [Wed, 21 Jun 2006 15:55:25 +0000 (16:55 +0100)]
[LINUX][TPM] Use min_t/min instead of the #define'd MIN.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
19 years ago[LINUX] Transparent virtualization fixes.
kaf24@firebug.cl.cam.ac.uk [Wed, 21 Jun 2006 15:54:09 +0000 (16:54 +0100)]
[LINUX] Transparent virtualization fixes.
Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
19 years ago[IA64] stub to support dump_execution_state() on ia64
kaf24@firebug.cl.cam.ac.uk [Wed, 21 Jun 2006 09:56:20 +0000 (10:56 +0100)]
[IA64] stub to support dump_execution_state() on ia64
Also implement on_selected_cpus() for ia64.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
19 years ago[XEN] Xen always relinquishes VGA console to domain0 when domain0
kaf24@firebug.cl.cam.ac.uk [Tue, 20 Jun 2006 17:51:46 +0000 (18:51 +0100)]
[XEN] Xen always relinquishes VGA console to domain0 when domain0
starts to boot (previous behaviour looked for console=tty0 on
dom0's command line). To prevent this 'console=vga[keep]' must
be specified.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Fix to previous changeset: continue to do softirq while delaying.
kaf24@firebug.cl.cam.ac.uk [Tue, 20 Jun 2006 17:28:41 +0000 (18:28 +0100)]
[XEN] Fix to previous changeset: continue to do softirq while delaying.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Add a warning banner when 'sync_console' is used. Make it
kaf24@firebug.cl.cam.ac.uk [Tue, 20 Jun 2006 17:19:07 +0000 (18:19 +0100)]
[XEN] Add a warning banner when 'sync_console' is used. Make it
very obvious and mildly annoying.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Fix PAE PDPT shadowing coherence.
kaf24@firebug.cl.cam.ac.uk [Tue, 20 Jun 2006 16:04:13 +0000 (17:04 +0100)]
[XEN] Fix PAE PDPT shadowing coherence.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoAdd new XENMEM_machphys_mapping to get info about location and
kfraser@dhcp93.uk.xensource.com [Tue, 20 Jun 2006 13:45:46 +0000 (14:45 +0100)]
Add new XENMEM_machphys_mapping to get info about location and
sizeof of the mach2phys table default mapping. Use this in Linux to
dynamically adapt the mfn_to_pfn() routine to undelrying hypervisor.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[LINUX] Another fix to i386 mfn_to_pfn().
kfraser@dhcp93.uk.xensource.com [Tue, 20 Jun 2006 12:45:23 +0000 (13:45 +0100)]
[LINUX] Another fix to i386 mfn_to_pfn().
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[LINUX] Fix i386 build -- define max_mapnr in mfn_to_pfn().
kfraser@dhcp93.uk.xensource.com [Tue, 20 Jun 2006 12:42:08 +0000 (13:42 +0100)]
[LINUX] Fix i386 build -- define max_mapnr in mfn_to_pfn().
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoMove the SSHTransport class to its own file, so that we may disable SSH
emellor@leeni.uk.xensource.com [Tue, 20 Jun 2006 12:32:21 +0000 (13:32 +0100)]
Move the SSHTransport class to its own file, so that we may disable SSH
transport when running on Python <2.4.  SSHTransport uses the new subprocess
class, and so it doesn't work on older versions.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
19 years agoMerge
ack@localhost.localdomain [Tue, 20 Jun 2006 11:12:44 +0000 (12:12 +0100)]
Merge

19 years agoRun credit scheduler tests by default
ack@localhost.localdomain [Tue, 20 Jun 2006 11:11:28 +0000 (12:11 +0100)]
Run credit scheduler tests by default
Signed-off-by: Emmanuel Ackaouy <ack@xensource.com>
19 years agoExport machine_to_phys start and end addresses to guests.
kfraser@dhcp93.uk.xensource.com [Tue, 20 Jun 2006 11:01:09 +0000 (12:01 +0100)]
Export machine_to_phys start and end addresses to guests.
Use this info in Linux to bounds-check accesses to the
m2p table.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoMake the credit scheduler the default - a number of bugs have been fixed
shand@kneesaa.uk.xensource.com [Tue, 20 Jun 2006 10:04:58 +0000 (11:04 +0100)]
Make the credit scheduler the default - a number of bugs have been fixed
(thanks to all for testing!) and now seems ready for more widespread usage.

Signed-off-by: Steven Hand <steven@xensource.com>
19 years agoRemove some spurious BUG_ON()'s from the credit scheduler.
shand@kneesaa.uk.xensource.com [Tue, 20 Jun 2006 10:02:49 +0000 (11:02 +0100)]
Remove some spurious BUG_ON()'s from the credit scheduler.

Signed-off-by: Steven Hand <steven@xensource.com>
19 years agoUse an environmental variable (XM_SERVER) to determine XML-RPC URI.
anthony@rhesis.austin.ibm.com [Tue, 20 Jun 2006 09:25:22 +0000 (10:25 +0100)]
Use an environmental variable (XM_SERVER) to determine XML-RPC URI.

This allows users to invoke xm against a remote server.  This is much more
useful though for exercising XML-RPC transports with xm-test though since
xm-test will continue to (mostly) function if the URI is localhost.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
19 years agoThis patch adds client side support for XML-RPC over ssh. It differs from
root@rhesis.austin.ibm.com [Tue, 20 Jun 2006 09:25:21 +0000 (10:25 +0100)]
This patch adds client side support for XML-RPC over ssh.  It differs from
the previous submission in that it now uses lazy evaluation to connect
to the remote server and provides more user friendly error messages if ssh
is not available.

Signed-off-by: Anthony Liguori
19 years agoAdd an xm serve command.
anthony@rhesis.austin.ibm.com [Tue, 20 Jun 2006 09:25:20 +0000 (10:25 +0100)]
Add an xm serve command.

This command proxies the Xend XML-RPC over stdio.  This is similiar to
mercurial's hg serve --stdio command.

The most obvious use of this command is remote XML-RPC invocation over SSH.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
19 years agoAdd support to Xend XML-RPC server for HTTP/1.1 Keep-Alive.
anthony@rhesis.austin.ibm.com [Tue, 20 Jun 2006 09:25:18 +0000 (10:25 +0100)]
Add support to Xend XML-RPC server for HTTP/1.1 Keep-Alive.

This patch fixes a few bugs in the Python SimpleXMLRPC server and enables
HTTP/1.1 by default.  This allows a client to use Keep-Alive.  Keep-Alive
improves performance by eliminating the overhead of connection setup and,
more importantly, avoids credential caching when executing multiple
commands over a secure connection.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
19 years ago[XM-TEST] Improve detection of a guest having booted to prompt.
kaf24@firebug.cl.cam.ac.uk [Mon, 19 Jun 2006 16:43:04 +0000 (17:43 +0100)]
[XM-TEST] Improve detection of a guest having booted to prompt.

Lots of xm-test tests are failing with console timeouts on some machines
at the moment.  I reproduced the problem and found it was due to some
probing activity in the boot process of the -xen kernel.  The behaviour
of the current xm-test code is to assume that the boot process has
finished after performing three one-second waits for input---when the
probing activity introduces more than three one-second delays the test
suite breaks.

This patch changes the test suite to wait for the command prompt
before attempting to submit a command.  The timeout is increased from 3
seconds to 3 minutes but the wait exits early when the prompt is found
so the test suite doesn't take any longer to run.

Signed-off-by: Harry Butterworth <butterwo@uk.ibm.com>
19 years ago[XEN][PAE] Always enable non-debug version of l3tab_needs_shadow()
kfraser@dhcp93.uk.xensource.com [Mon, 19 Jun 2006 16:26:54 +0000 (17:26 +0100)]
[XEN][PAE] Always enable non-debug version of l3tab_needs_shadow()
as there is some suspicion that it leads to crashes on PAE hosts.
Also: improve bracketing in the macros, for safety.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[HVM][VMX][PAE] Enable PAE VMX guest on PAE host.
kaf24@firebug.cl.cam.ac.uk [Mon, 19 Jun 2006 15:47:21 +0000 (16:47 +0100)]
[HVM][VMX][PAE] Enable PAE VMX guest on PAE host.
The PAE VMX guest supports NX bit and can do kernel build successfully.

Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
Signed-off-by: Xiaohui Xin <xiaohui.xin@intel.com>
19 years agoAdd DOM0_DOMAIN_SETUP hypercall.
kaf24@firebug.cl.cam.ac.uk [Mon, 19 Jun 2006 15:39:27 +0000 (16:39 +0100)]
Add DOM0_DOMAIN_SETUP hypercall.
Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
[I fiddled with the flags prefix after all. :-)
Signed-off-by: Keir Fraser <keir@xensource.com>]
19 years ago[XEN][PAE] Stores to PTEs in PAE mode use CMPXCHG to ensure atomicity.
kfraser@dhcp93.uk.xensource.com [Mon, 19 Jun 2006 13:44:34 +0000 (14:44 +0100)]
[XEN][PAE] Stores to PTEs in PAE mode use CMPXCHG to ensure atomicity.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN][PAE] Handle non-page-aligned CR3 when walking
kfraser@dhcp93.uk.xensource.com [Mon, 19 Jun 2006 13:03:04 +0000 (14:03 +0100)]
[XEN][PAE] Handle non-page-aligned CR3 when walking
page tables.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] New function dump_execution_state() displays
kfraser@dhcp93.uk.xensource.com [Mon, 19 Jun 2006 12:06:10 +0000 (13:06 +0100)]
[XEN] New function dump_execution_state() displays
current register and stack state of local CPU.
Use this to extend the 'd' debug key to be more useful.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Rename show_registers() to show_execution_state().
kfraser@dhcp93.uk.xensource.com [Mon, 19 Jun 2006 10:44:25 +0000 (11:44 +0100)]
[XEN] Rename show_registers() to show_execution_state().
This makes more sense since it dumps stack as well as
registers. show_registers() still exists; it simply doesn't
dump the stack any more.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Improve double-fault tracing -- print backtrace
kfraser@dhcp93.uk.xensource.com [Mon, 19 Jun 2006 10:21:40 +0000 (11:21 +0100)]
[XEN] Improve double-fault tracing -- print backtrace
on stack overflow.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Fix non-debug builds.
kfraser@dhcp93.uk.xensource.com [Mon, 19 Jun 2006 10:10:10 +0000 (11:10 +0100)]
[XEN] Fix non-debug builds.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Fix ptwr_do_page_fault() after new more permissive
kfraser@dhcp93.uk.xensource.com [Mon, 19 Jun 2006 09:18:39 +0000 (10:18 +0100)]
[XEN] Fix ptwr_do_page_fault() after new more permissive
entry conditions to that function. Now that we no longer
check PGERR_page_present (i.e., that fault is a protection
fault), because it's not safe to do so, we can enter
ptwr_do_page_fault() with a not-present L2 page directory.
We then crash on our first access to the linear_l2_table.
This patch fixes all unprotected accesses to the
linear_l2_table to correctly handle faults.

Also move setup of globally-visible ptwr info record to end
of ptwr_do_page_fault(). We don't want the info picked up
by reentrant invocations of the page-fault handler.

Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Remove code from writable-pagetable emulation path which
kaf24@firebug.cl.cam.ac.uk [Sun, 18 Jun 2006 18:49:31 +0000 (19:49 +0100)]
[XEN] Remove code from writable-pagetable emulation path which
does not appear to be necessary. Replace with assertions for now,
pending total removal or me being proved wrong.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Multi-processor guests need to be more conservative when
kaf24@firebug.cl.cam.ac.uk [Sun, 18 Jun 2006 18:44:13 +0000 (19:44 +0100)]
[XEN] Multi-processor guests need to be more conservative when
doing batched writable-pagetable work.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[XEN] Fix page-fault handler to not trust bit 0 of error code.
kaf24@firebug.cl.cam.ac.uk [Sun, 18 Jun 2006 18:24:00 +0000 (19:24 +0100)]
[XEN] Fix page-fault handler to not trust bit 0 of error code.
It can be cleared due to writable-pagetable logic. Various
other cleanups too. Spurious fault detection logic is
simplified.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoSmall fixes to changesets 10424 and 10425 (spurious #PF detection).
kaf24@firebug.cl.cam.ac.uk [Sat, 17 Jun 2006 11:57:03 +0000 (12:57 +0100)]
Small fixes to changesets 10424 and 10425 (spurious #PF detection).
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[SEDF] Fix SEDF defaults to make domain0 take only a fair
kaf24@firebug.cl.cam.ac.uk [Sat, 17 Jun 2006 10:29:35 +0000 (11:29 +0100)]
[SEDF] Fix SEDF defaults to make domain0 take only a fair
equally-weighted share of extratime. Also, hack the short-
blocking logic as otherwise domain0 steals all CPU time
for several seconds after waking from a long sleep.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[HVM] Clean up formatting of new piix acpi file.
kaf24@firebug.cl.cam.ac.uk [Sat, 17 Jun 2006 08:19:16 +0000 (09:19 +0100)]
[HVM] Clean up formatting of new piix acpi file.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[HVM] ACPI support patch 4 of 4: shutdown.
kaf24@firebug.cl.cam.ac.uk [Sat, 17 Jun 2006 08:08:14 +0000 (09:08 +0100)]
[HVM] ACPI support patch 4 of 4: shutdown.
The patch is incorporated  from Ben's Virtual Iron's ACPI shutdown patch
in changeset 9989:f8d20c3e4225
The patch support guest ACPI Windows shutdown, as well as ACPI guest
Linux "halt -p" and "shutdown -h now".

Signed-off-by: Ben Thomas <ben@virtualiron.com>
Signed-off-by: Winston Wang <winston.l.wang@intel.com>
19 years ago[HVM] ACPI support patch 3 of 4: ACPI _PRT table.
kaf24@firebug.cl.cam.ac.uk [Sat, 17 Jun 2006 08:06:46 +0000 (09:06 +0100)]
[HVM] ACPI support patch 3 of 4: ACPI _PRT table.
Adds ACPI _PRT table for PCI IRQ routing table in PIC mode
and fixes the _PRT table in APIC mode

Signed-off-by: Tang Liang <tangliang@lenovo.com>
Signed-off-by: Winston Wang <winston.l.wang@intel.com>
19 years ago[HVM] ACPI support patch 2 of 4: ACPI timer.
kaf24@firebug.cl.cam.ac.uk [Sat, 17 Jun 2006 08:05:34 +0000 (09:05 +0100)]
[HVM] ACPI support patch 2 of 4: ACPI timer.
ACPI timer is required during guest windows installation and boot.

Signed-off-by: Tang Liang <tangliang@lenovo.com>
Signed-off-by: Winston Wang <winston.l.wang@intel.com>
19 years ago[HVM] ACPI support patch 1 of 4: main components.
kaf24@firebug.cl.cam.ac.uk [Sat, 17 Jun 2006 08:00:16 +0000 (09:00 +0100)]
[HVM] ACPI support patch 1 of 4: main components.

The patch support ACPI UP Guest Windows 2000,  XP and 2003, based on
this we are going to add more support on SMP and 64bit Windows( which
are only working in ACPI mode) later. We tested: in ia32 guest:

  a. Installation and boot of  Windows XP sp2 and 2003 server in ACPI
mode
  b  when boot to both window, no yellow mark in device manger and  USB,
network card and IDE DMA are working.
  c. clean boot (without ACPI related errors) on UP and  4 vcpu rhel4u1
SMP guest and got ioapic Interrupt assigned according to ACPI DSDT
table's _PRT table's GSI.

To minimize the implementation efforts to satisfy the ACPI OS
installation and boot, we implemented  ACPI only event logical model by
emulating ACPI hardware based on PIIX4 (Intel 82371ab) by:  Populating
the PIIX4  ACPI bridge PCI configuration space; Adding ACPI timer
(required during windows installation/boot), PM1 event register block
and PM1 control register block (both are required during
installation/boot, shutdown, entering and leaving PM S state if adding
those features later), we provided full ACPI hardware registers above
using byte/word/dword access per ACPI spec requirement.

The patch also fixed many existing hvm ACPI related bugs, such as
warnings when boot to ACPI  UP and SMP guest Linux OS; adding new ACPI
_PRT table reporting PCI IRQ routing table in PIC mode,  adding new _PRT
table in APIC mode, that fixed no IRQ GSI cause it is forced to shutdown
when OS find new device to assign IRQ without ACPI event service; The
patch also fixed the ACPI DSDT table's  PCI resource conflict with guest
e820 table when booting and installing ACPI Windows; we also added ACPI
shutdown service by incorporating the code in ACPI "hardware enable
register writer" from  Ben's Virtual Iron's team's patch in changeset
9989:f8d20c3e4225.

We only provide minimum power management requirement support per spec-c1
and S5 for shutdown, may be S4 (hibernating which is meaningful for user
to save their working section)  in the future.

Please note, current patch needs to  have following switches in guest
configuration to enable proper ACPI support
  a. need to add ACPI=1 (apic=1 if boot SMP Linux guest plus vcpu=
number want to test) in xmexample.hvm
  b. need to add USB support: USB=1 and usbdevice='device' (or
='tablet') as the pm register base is static..., I will adding dynamic
ACPI FADT table for pm register base pointer later.

When installing guest OS in ACPI mode, need to manually tell Windows
setup program to install single core ACPI HAL:
   After passing the 1st screen of windows setup of install Windows,
   the first thing you'll see at the bottom of the screen is the
   option to press F6 if you need to install a SCSI or RAID
   controller. Don't press F6. Press F5 instead. This will take
   you to a separate menu of Hardware Abstraction Layer's where
   you can choose an appropriate HAL .The choices will be:

   ACPI Multiprocessor PC
   ACPI Uniprocessor PC
   Advanced Configuration and Power Interface (ACPI) PC
   ...
   Standard PC
   Standard PC with C-Step i486

Please select "Advanced Configuration and Power Interface (ACPI) PC"
using current patch.

Signed-off-by: Winston Wang <winston.l.wang@intel.com>